package com.haigirl.oop;
/*
 1 面向对象
  1.2 面向对象的思想
  1.3 面向对象解决问题的出发点：找谁去做。【谁就是对象，对象由类进行规范定义】
  1.4 面向对象核心思想：抽象、封装、继承、多态。
  1.5 面向的目的：代码复用。
  1.6 面向对象编程实现：
		（1）创建一个类；
		（2）编写属性；
		（3）编写行为方法；
		（4）在测试类中使用new创建一个该列的实例对象；
		（5）调用该实例的行为方法；
 2 封装

    构造方法 

	构造方法是使用new创建类的实例对象时所调用的方法；
	
	语法：
		访问控制修饰符  类名(形参列表){
			构造方法体;
		}

	注意：
		（1）构造方法是一类特殊的方法；
		（2）构造方法在类的外部只能通过new的方式进行调用；【除此以外，在类的外部无法调用构造方法】
		（3）构造方法没有返回值类型，且方法名和类名一样；
		（4）jvm默认会给每个类提供一个不带参数的默认的构造方法。
		（5）如果在一个类中写了自定义的构造方法，
			则jvm提供的默认的构造方法失效，如果还需要使用，则需要显式写出该类的默认的构造方法。
		（6）类的构造方法可以使用ide工具自动生成，右键--source--generate Constructors 然后选择不同的属性作为形参进行生成
		（7）构造方法可以重载；
		（8）类在new是调用的构造方法；调用那个构造方法由实参列表决定；
		（9）构造方法在外部不能直接调用，但是构造方法之间可以通过 this(参数列表); 的方式进行调用；
			使用this()的方式调用构造方法，要求this()必须在方法体的第一行；
		（10）构造方法可以初始化私有属性，但是只能执行一次；不同于set接口，set接口可以调用多次；
	代码[com.yuw.oop.test01.MyPoint、com.yuw.oop.test01.MyPointTestDriver]:
		参见以上两个类即可；
		
 */
public class Oop {

}
